home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 23 / CU Amiga - Super CD-ROM 23 (June 1998).iso / CUCD / Sound / PreludeAMP / src / getdata.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-05-31  |  1.2 KB  |  43 lines

  1. /* this file is a part of amp software, (C) tomislav uzelac 1996,1997
  2. */
  3.  
  4. /* getdata.h 
  5.  *
  6.  * tomislav uzelac  Apr 1996
  7.  */
  8.  
  9. extern int decode_scalefactors(struct SIDE_INFO *info,struct AUDIO_HEADER *header,int gr,int ch); 
  10.  
  11. extern int is_max[21];
  12. extern int intensity_scale;
  13.  
  14. #ifdef GETDATA
  15.  
  16. static char t_slen1[16]={0,0,0,0,3,1,1,1,2,2,2,3,3,3,4,4};
  17. static char t_slen2[16]={0,1,2,3,0,1,2,3,1,2,3,1,2,3,2,3};
  18.  
  19. int is_max[21]; /* the maximum value of is_pos. for short blocks is_max[sfb=0] == is_max[6],
  20.             * it's sloppy but i'm sick of waisting storage. blaah...
  21.          */
  22. int intensity_scale;
  23.  
  24. int decode_scalefactors(struct SIDE_INFO *info,struct AUDIO_HEADER *header,int gr,int ch);
  25.  
  26. /* my implementation of MPEG2 scalefactor decoding is, admitably, horrible
  27.  * anyway, just take a look at pg.18 of MPEG2 specs, and you'll know what
  28.  * this is all about
  29.  */
  30. static const char spooky_table[2][3][3][4]={
  31. {
  32. { {6,5,5,5},   {9,9,9,9},   {6,9,9,9} },
  33. { {6,5,7,3},   {9,9,12,6},  {6,9,12,6}},
  34. { {11,10,0,0}, {18,18,0,0}, {15,18,0,0}} 
  35. },
  36. {
  37. { {7,7,7,0},   {12,12,12,0}, {6,15,12,0}},
  38. { {6,6,6,3},   {12,9,9,6},   {6,12,9,6}},
  39. { {8,8,5,0},   {15,12,9,0},  {6,18,9,0}}
  40. }};
  41.  
  42. #endif /* GETDATA */
  43.